1. Technical Field
The present disclosure relates generally to web services and, more particularly, to a method and apparatus for translating a web services address.
2. Description of the Related Art
Web services are automated resources that can be accessed via the Internet and provide a way for computer systems to communicate with one another. Computer system(s) as referred to herein may include(s) individual computers, servers, computing resources, and/or networks, etc. Generally, a web service may be a function exposed by a web server and accessed by a client application. Web services use “Extensible Markup Language” (XML) to transmit data. XML is a human readable language that is used for tagging the data that is used by web services.
XML-based web services are becoming increasingly important in the world of enterprise computing. A combination of open standards, platform independence that is, to some extent, self-describing and human-readable has created a great deal of growth in new web services, and in adding web services interfaces to existing programs. This has resulted in large numbers of web services, often interacting with each other, and sometimes interacting with web services from other enterprises.
Such a large number of interacting web services may be difficult to manage. When a web service changes its address or details, all the other web services relying on it should be updated as well. This has led to the creation of the “Universal Discovery, Description and Integration” (UDDI) standard. UDDI is a web based globally distributed directory that exposes information about service providers, service implementations, and service metadata. UDDI is similar to a phone book's yellow pages and can be used by web services as a central repository—a “yellow pages” of web services where web addresses and details may be looked up.
However, web services are particularly vulnerable to security attacks because they use standard HTTP communications over “port 80” (not included in the Figures), a port through which firewalls are set up to allow inbound and outbound web-oriented traffic through. Therefore, because most firewalls do not block communications on port 80, critical operations of enterprises may be exposed to outsiders. For example, the address of a web service may be, http://myserver.companyA.com/apache/axis/dataserver. The name of this address tells a user that there is an internal server called “myserver.companyA.com”, and suggests that it may be running the well known “Apache” web server, with the common “Axis” servlet runner. If an intruder finds a bug in either Apache or Axis, they may easily begin an attack on this web service.
Accordingly, it would be beneficial to provide a reliable and effective way to translate web services in order to prevent the public from accessing the details and structure of internal systems.